//package com.aaa.order.controller;
//
//import com.aaa.entity.Order;
//import com.aaa.entity.Product;
//import com.aaa.order.service.IOrderService;
//import org.springframework.beans.factory.annotation.Autowired;
//import org.springframework.web.bind.annotation.GetMapping;
//import org.springframework.web.bind.annotation.RequestMapping;
//import org.springframework.web.bind.annotation.RestController;
//import org.springframework.web.client.RestTemplate;
//
///**
// * @program: qy156-shop-parent
// * @description:
// * @author: 闫克起2
// * @create: 2022-11-17 16:33
// **/
//@RestController
//@RequestMapping("/order")
//public class OrderController02 {
//
//
//    //必须创建并交于spring容器管理。这样才能被注入到相应的类属性上
//    @Autowired
//    private RestTemplate restTemplate;
//
//    @Autowired
//    private IOrderService orderService;
//
//    @GetMapping("/saveOrder")
//    public String saveOrder(Long pid,Integer num){
//        Order order=new Order();
//        //用户得信息可以从登录后获取--Session  redis  jwt
//        order.setUid(1);
//        order.setUsername("张成");
//        //为订单对象设置商品得信息
//        order.setPid(pid);
//       //需要远程调用商品微服务中的指定接口[注意:凡是关于商品的操作都有商品微服务来执行。]
//        //远程调用的方式:第一种基于TCP协议的RPC远程调用   第二种基于http协议Restful风格的调用。
//        //分布式架构:TCP协议的
//        //微服务架构:http协议的。---在spring框架中封装了一个工具RestTemplate。 如果不是使用的spring框架。你需要自己封装HttpClient工具
//        Product product = restTemplate.getForObject("http://localhost:8001/product/getById/"+pid, Product.class);
//        order.setPname(product.getPname());
//        order.setPprice(product.getPprice());
//        order.setNumber(num);
//
//        orderService.save(order);
//
//        return "下单成功";
//    }
//}
